/**
 * 
 */
package org.codesketch.birch.command;

import org.codesketch.birch.common.BirchRequest;

/**
 * Exposes all the possible request fields. The field names are according to the specific 
 * AWS request and are suposed to be used to populate the {@link BirchRequest}.  
 * @author Quirino Brizi
 *
 */
public final class RequestField {
	private RequestField() {}
	
	public static String REQUEST_CREDENTIALS					= "requestCredentials";
	
	// RunInstancesRequest
	
	public static String RUN_INSTANCE_MIN_COUNT 				= "minCount";
	public static String RUN_INSTANCE_MAX_COUNT 				= "maxCount";
	public static String RUN_INSTANCE_ADDITION_INFO 			= "additionalInfo";
	public static String RUN_INSTANCE_IMAGE_ID 					= "imageId";
	public static String RUN_INSTANCE_KEY_NAME 					= "keyName";
	public static String RUN_INSTANCE_SECURITY_GROUPS 			= "securityGroups";
	public static String RUN_INSTANCE_SECURITY_GROUP_IDS 		= "securityGroupIds";
	public static String RUN_INSTANCE_USER_DATA					= "userData";
	public static String RUN_INSTANCE_ADDRESSING_TYPE			= "addressingType";
	public static String RUN_INSTANCE_INSTANCE_TYPE				= "instanceType";
	public static String RUN_INSTANCE_PLACEMENT					= "placement";
	public static String RUN_INSTANCE_KERNEL_ID					= "kernelId";
	public static String RUN_INSTANCE_RAMDISK_ID				= "ramdiskId";
	public static String RUN_INSTANCE_BLOCK_DEVICE_MAPPINGS 	= "blockDeviceMappings";
	public static String RUN_INSTANCE_MONITORING				= "monitoring";
	public static String RUN_INSTANCE_SUBNET_ID					= "subnetId";
	public static String RUN_INSTANCE_DISABLE_API_TERMINATION	= "disableApiTermination";
	public static String RUN_INSTANCE_INSTANCE_INITIATED_SHUTDOWN_BEHAVIOR = "instanceInitiatedShutdownBehavior";
	public static String RUN_INSTANCE_LICENSE					= "license";
	public static String RUN_INSTANCE_PRIVATE_IP_ADDRESS		= "privateIpAddress";
	public static String RUN_INSTANCE_CLIENT_TOKEN				= "clientToken";
	public static String RUN_INSTANCE_ADDITIONAL_INFO			= "additionalInfo";
	public static String RUN_INSTANCE_NETWORK_INTERFACES		= "networkInterfaces";
	
	// TerminateInstancesRequest
	public static String TERMINATE_INSTANCES_INSTANCE_IDS		= "instanceIds";
	
	// CreateTagRequest
	public static String CREATE_TAG_RESOURCES					= "resources";
	public static String CREATE_TAG_TAGS						= "tags";
	
	// StartInstancesRequest
	public static String START_INSTANCES_INSTANCE_IDS			= "instanceIds";
	
	// StopInstancesRequest
	public static String STOP_INSTANCES_INSTANCE_IDS			= "instanceIds";
	public static String STOP_INSTANCES_FORCE					= "force";
	
	// DescribeInstancesRequest
	public static String DESCRIBE_INSTANCES_ID					= "instanceIds";
		
}
